package com.poster.service;

import com.auth0.jwt.interfaces.Claim;
import com.poster.entity.po.Permission;
import com.poster.enums.PermissionType;
import jakarta.servlet.http.HttpServletRequest;
import org.apache.ibatis.annotations.Delete;
import java.util.*;

public interface IRoleService {

    void create(Integer creatorId, String roleName, String introduction);

    void editInfo(Integer editorId,Integer roleId, String name, String introduction);

    void bindPermission(Integer creator,Integer roleId, List<Integer> permissionIds);

    Map<String, Claim> authentication(HttpServletRequest request, PermissionType permission);

    Map<String, Claim> authentication(HttpServletRequest request);

    void saveRolePermissionMap2Redis();

}
